<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:p="http://primefaces.org/ui"      
      xmlns:stella="http://stella.caelum.com.br/faces2"
      xmlns:c="http://xmlns.jcp.org/jsp/jstl/core">

    <ui:composition>
        <h:form id="PessoaEditForm" rendered="#{not empty clienteController.selected}">
            <h:panelGroup id="display">
                <p:panelGrid  columns="2" >
                    <p:outputLabel value="#{bundle.EditPessoaLabel_desde}" for="desde"/>
                    <p:inputText value="#{clienteController.selected.desde}" id="desde" disabled="true"/>
                    <p:outputLabel value="#{bundle.EditPessoaLabel_conheceuPor}" for="conheceuPor"/>
                    <p:selectOneMenu id="conheceuPor" value="#{clienteController.selected.conheceuPor}" var="midia" required="true" requiredMessage="#{bundle.EditPessoaMidiaRequerida}" converter="campanhaMidiaXConverter">
                        <f:selectItems value="#{campanhaMidiaXController.items}" var="campanhaMidiaX" itemValue="#{campanhaMidiaX}" itemLabel="#{campanhaMidiaX}"/>
                    </p:selectOneMenu>
                    <c:if test="#{clienteController.selected.pessoa.tipo eq 'PJ'}">


                        <p:outputLabel value="#{bundle.EditPessoaJuridicaLabel_cnpj}" for="cnpj" />
                        <h:panelGroup>
                            <p:inputMask id="cnpj" mask="99.999.999/9999-99" value="#{clienteController.selected.pessoa.cnpj}" title="#{bundle.EditPessoaJuridicaTitle_cnpj}">
                                <stella:validateCNPJ formated="true"/>
                            </p:inputMask>
                            <p:tooltip for="cnpj" value="#{pessoaJuridicaController.getComponentMessages('cnpj', bundle.EditPessoaJuridicaHelpText_cnpj)}"/>
                        </h:panelGroup>


                        <p:outputLabel value="#{bundle.EditPessoaJuridicaLabel_razaoSocial}" for="razaoSocial" />
                        <h:panelGroup>
                            <p:inputText id="razaoSocial" value="#{pessoaJuridicaController.selected.razaoSocial}" title="#{bundle.EditPessoaJuridicaTitle_razaoSocial}"/>
                            <p:tooltip for="razaoSocial" value="#{pessoaJuridicaController.getComponentMessages('razaoSocial', bundle.EditPessoaJuridicaHelpText_razaoSocial)}"/>
                        </h:panelGroup>


                        <p:outputLabel value="#{bundle.EditPessoaJuridicaLabel_nomeFantasia}" for="nomeFantasia" />
                        <h:panelGroup>
                            <p:inputText id="nomeFantasia" value="#{clienteController.selected.pessoa.nomeFantasia}" title="#{bundle.EditPessoaJuridicaTitle_nomeFantasia}"/>
                            <p:tooltip for="nomeFantasia" value="#{pessoaJuridicaController.getComponentMessages('nomeFantasia', bundle.EditPessoaJuridicaHelpText_nomeFantasia)}"/>
                        </h:panelGroup>


                        <p:outputLabel value="#{bundle.EditPessoaJuridicaLabel_inscricaoEstadualNumero}" for="inscricaoEstadualNumero" />
                        <h:panelGroup>
                            <p:inputText id="inscricaoEstadualNumero" value="#{clienteController.selected.pessoa.inscricaoEstadualNumero}" title="#{bundle.EditPessoaJuridicaTitle_inscricaoEstadualNumero}"/>
                            <p:tooltip for="inscricaoEstadualNumero" value="#{pessoaJuridicaController.getComponentMessages('inscricaoEstadualNumero', bundle.EditPessoaJuridicaHelpText_inscricaoEstadualNumero)}"/>
                        </h:panelGroup>


                        <p:outputLabel value="#{bundle.EditPessoaJuridicaLabel_inscricaoEstadualUF}" for="inscricaoEstadualUF" />
                        <h:panelGroup>
                            <p:inputText id="inscricaoEstadualUF" value="#{clienteController.selected.pessoa.inscricaoEstadualUF}" title="#{bundle.EditPessoaJuridicaTitle_inscricaoEstadualUF}"/>
                            <p:tooltip for="inscricaoEstadualUF" value="#{pessoaJuridicaController.getComponentMessages('inscricaoEstadualUF', bundle.EditPessoaJuridicaHelpText_inscricaoEstadualUF)}"/>
                        </h:panelGroup>
                    </c:if>
                    <c:if test="#{clienteController.selected.pessoa.tipo eq 'PF'}">

                        <p:outputLabel value="#{bundle.CreatePessoaFisicaLabel_sexo}" for="sexo" />
                        <h:panelGroup>
                            <p:autoComplete var="sexo" itemLabel="#{sexo}" itemValue="#{sexo}" minQueryLength="3" 
                                            completeMethod="#{sexoController.completeItemsFromText}" converter="sexoConverter" id="sexo" 
                                            forceSelection="true" maxResults="5" value="#{clienteController.selected.pessoa.sexo}" queryDelay="250" dropdown="true"/>
                            <p:tooltip for="sexo" value="#{pessoaFisicaController.getComponentMessages('sexo', bundle.CreatePessoaFisicaHelpText_sexo)}"/>
                        </h:panelGroup>                        
                        <p:outputLabel value="#{bundle.CreatePessoaFisicaLabel_estadoCivil}" for="estadoCivil" />
                        <h:panelGroup>
                            <p:autoComplete var="estadoCivil" itemLabel="#{estadoCivil}" itemValue="#{estadoCivil}" minQueryLength="3" 
                                            completeMethod="#{estadoCivilController.completeItemsFromText}" converter="estadoCivilConverter" id="estadoCivil" 
                                            forceSelection="true" maxResults="5" value="#{clienteController.selected.pessoa.estadoCivil}" queryDelay="250" dropdown="true"/>
                            <p:tooltip for="estadoCivil" value="#{estadoCivilController.getComponentMessages('estadoCivil', bundle.CreatePessoaFisicaHelpText_naturalDe)}"/>
                        </h:panelGroup>
                        <p:outputLabel value="#{bundle.CreatePessoaFisicaLabel_naturalDe}" for="naturalDe" />
                        <h:panelGroup>
                            <p:autoComplete var="municipio" itemLabel="#{municipio}" itemValue="#{municipio}" minQueryLength="3" 
                                            completeMethod="#{municipioController.completeItemsFromText}" converter="municipioConverter" id="naturalDe" forceSelection="true"
                                            maxResults="5" value="#{clienteController.selected.pessoa.naturalDe}" queryDelay="250" dropdown="true"/>
                            <p:tooltip for="naturalDe" value="#{pessoaFisicaController.getComponentMessages('naturalDe', bundle.CreatePessoaFisicaHelpText_naturalDe)}"/>
                        </h:panelGroup>
                        <p:outputLabel value="#{bundle.CreatePessoaFisicaLabel_cpf}" for="cpf" />
                        <h:panelGroup>
                            <p:inputMask id="cpf" mask="999.999.999-99" value="#{clienteController.selected.pessoa.cpf}" title="#{bundle.CreatePessoaFisicaTitle_cpf}" size="14" maxlength="14">
                                <stella:validateCPF formatted="true" />
                            </p:inputMask>
                            <p:tooltip for="cpf" value="#{pessoaFisicaController.getComponentMessages('cpf', bundle.CreatePessoaFisicaHelpText_cpf)}"/>
                        </h:panelGroup>
                        <p:outputLabel value="#{bundle.CreatePessoaFisicaLabel_dataNascimento}" for="dataNascimento" />
                        <h:panelGroup>
                            <p:calendar id="dataNascimento" locale="pt_BR" value="#{clienteController.selected.pessoa.dataNascimento}" title="#{bundle.CreatePessoaFisicaTitle_dataNascimento}"  showOn="button"/>
                            <p:tooltip for="dataNascimento" value="#{pessoaFisicaController.getComponentMessages('dataNascimento', bundle.CreatePessoaFisicaHelpText_dataNascimento)}"/>
                        </h:panelGroup>
                        <p:outputLabel value="#{bundle.CreatePessoaFisicaLabel_rgNumero}" for="rgNumero" />
                        <h:panelGroup>
                            <p:inputText id="rgNumero" value="#{clienteController.selected.pessoa.rgNumero}" title="#{bundle.CreatePessoaFisicaTitle_rgNumero}" size="255" maxlength="255"/>
                            <p:tooltip for="rgNumero" value="#{pessoaFisicaController.getComponentMessages('rgNumero', bundle.CreatePessoaFisicaHelpText_rgNumero)}"/>
                        </h:panelGroup>
                        <p:outputLabel value="#{bundle.CreatePessoaFisicaLabel_rgOrgaoExpedidor}" for="rgOrgaoExpedidor" />
                        <h:panelGroup>
                            <p:inputText id="rgOrgaoExpedidor" value="#{clienteController.selected.pessoa.rgOrgaoExpedidor}" title="#{bundle.CreatePessoaFisicaTitle_rgOrgaoExpedidor}" size="255" maxlength="255"/>
                            <p:tooltip for="rgOrgaoExpedidor" value="#{pessoaFisicaController.getComponentMessages('rgOrgaoExpedidor', bundle.CreatePessoaFisicaHelpText_rgOrgaoExpedidor)}"/>
                        </h:panelGroup>
                        <p:outputLabel value="#{bundle.CreatePessoaFisicaLabel_rgUF}" for="rgUF" />
                        <h:panelGroup>
                            <p:autoComplete var="rgUf" itemLabel="#{rgUf}" itemValue="#{rgUf}" minQueryLength="2" 
                                            completeMethod="#{ufController.completeItemsFromText}" converter="ufConverter" id="rgUF" forceSelection="true"
                                            maxResults="1" value="#{clienteController.selected.pessoa.rgUF}" queryDelay="250" dropdown="true"/>
                            <p:tooltip for="rgUF" value="#{pessoaFisicaController.getComponentMessages('rgUF', bundle.CreatePessoaFisicaHelpText_rgUF)}"/>
                        </h:panelGroup>                        
                        <p:outputLabel value="#{bundle.CreatePessoaFisicaLabel_nome}" for="nome" />
                        <h:panelGroup>
                            <p:inputText id="nome" value="#{clienteController.selected.pessoa.nome}" title="#{bundle.CreatePessoaFisicaTitle_nome}" size="255" maxlength="255"/>
                            <p:tooltip for="nome" value="#{pessoaFisicaController.getComponentMessages('nome', bundle.CreatePessoaFisicaHelpText_nome)}"/>
                        </h:panelGroup>
                        <p:outputLabel value="#{bundle.CreatePessoaFisicaLabel_cnhCategoria}" for="cnhCategoria" />
                        <h:panelGroup>
                            <p:inputText id="cnhCategoria" value="#{clienteController.selected.pessoa.cnhCategoria}" title="#{bundle.CreatePessoaFisicaTitle_cnhCategoria}" size="255" maxlength="255"/>
                            <p:tooltip for="cnhCategoria" value="#{pessoaFisicaController.getComponentMessages('cnhCategoria', bundle.CreatePessoaFisicaHelpText_cnhCategoria)}"/>
                        </h:panelGroup>
                        <p:outputLabel value="#{bundle.CreatePessoaFisicaLabel_cnhNumero}" for="cnhNumero" />
                        <h:panelGroup>
                            <p:inputText id="cnhNumero" value="#{clienteController.selected.pessoa.cnhNumero}" title="#{bundle.CreatePessoaFisicaTitle_cnhNumero}" size="255" maxlength="255"/>
                            <p:tooltip for="cnhNumero" value="#{pessoaFisicaController.getComponentMessages('cnhNumero', bundle.CreatePessoaFisicaHelpText_cnhNumero)}"/>
                        </h:panelGroup>
                        <p:outputLabel value="#{bundle.CreatePessoaFisicaLabel_cnhValidade}" for="cnhValidade" />
                        <h:panelGroup>
                            <p:calendar id="cnhValidade" locale="pt_BR" value="#{clienteController.selected.pessoa.cnhValidade}" title="#{bundle.CreatePessoaFisicaTitle_cnhValidade}"  showOn="button"/>
                            <p:tooltip for="cnhValidade" value="#{pessoaFisicaController.getComponentMessages('cnhValidade', bundle.CreatePessoaFisicaHelpText_cnhValidade)}"/>
                        </h:panelGroup>
                    </c:if>    
                </p:panelGrid>
                <p:commandButton actionListener="#{clienteController.save}" value="#{bundle.Save}" update="display,:growl">
                    <p:confirm header="#{bundle.ConfirmationHeader}" message="#{bundle.ConfirmEditMessage}" icon="ui-icon-alert"/>
                </p:commandButton>
                <p:commandButton value="#{bundle.Cancel}"/>
            </h:panelGroup>
        </h:form> 

    </ui:composition>

</html>
